Finding Semantic Bugs Fast
نویسندگان
چکیده
Abstract Finding semantic bugs in code is difficult and requires precious expert time. Lacking comprehensive formal specifications, deductive verification not an option. We propose incremental specification procedure: With the help of automatic tools, a domain guided through program runs source locations. The validates run at certain locations creates lightweight annotations. Formal methods training required. demonstrate by example that this approach capable to quickly detect different kinds bugs. position our middle ground between fully-fledged bug finding without guidance.
منابع مشابه
Finding Concurrency Bugs In Java
Because threads are a core feature of the Java language, the widespread adoption of Java has exposed a much wider audience to concurrency than previous languages have. Concurrent programs are notoriously difficult to write correctly, and many subtle bugs can result from incorrect use of threads and synchronization. Therefore, finding techniques to find concurrency bugs is an important problem. ...
متن کاملFinding the lazy programmer's bugs
Traditionally developers and testers created huge numbers of explicit tests, enumerating interesting cases, perhaps biased by what they believe to be the current boundary conditions of the function being tested. Or at least, they were supposed to. A major step forward was the development of property testing. Property testing requires the user to write a few functional properties that are used t...
متن کاملFinding and Fixing Bugs in Liquid Haskell
Dependent types provide strong guarantees but can be hard to program, admitting mistakes in the implementation as well as the specification. We present algorithms for resolving verification failures by both finding bugs in implementations and also completing annotations in the refinement type framework. We present a fault localization algorithm for finding likely bug locations when verification...
متن کاملFinding and Avoiding Bugs in Enterprise Ontologies
We report on ten years of experience building enterprise ontologies for commercial clients. We describe key properties that an enterprise ontology should have, and illustrate them with many real world examples. They are: correctness, understandability, usability, and completeness. We give tips and guidelines for how best to use inference and explanations to identify and track down problems. We ...
متن کاملA Machine Learning Approach to Finding Bugs
Recently a number of tools have been developed for finding bugs in programs without executing the programs. While these tools are helpful, they often report too many false alarms, false negatives or both. This paper does not present any new such tools. Rather, it is focused on providing a machine learning approach for integrating existing bug finding tools into a practical and adaptive toolset.
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Lecture Notes in Computer Science
سال: 2022
ISSN: ['1611-3349', '0302-9743']
DOI: https://doi.org/10.1007/978-3-030-99429-7_8